import { NgModule } from '@angular/core';
import { CommonModule, DatePipe } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from "@angular/forms";

import { NavigationRoutingModule } from './navigation-routing.module';
import { NavigationComponent } from './navigation.component';
import { MenuComponent } from './menu/menu.component';
import { MenuService } from "../../service/menu.service";
import { SharedModule } from "../../shared/shared.module";
import { DialogService } from "../../shared/dialog.service";
import { NavigationToolbarComponent } from './navigation-toolbar/navigation-toolbar.component';
import { NavigationBackgroundComponent } from './navigation-background/navigation-background.component';
import { UserSessionComponent } from "./user-session/user-session.component";
import { TitleComponent } from "./title/title.component";
import { AlarmLampComponent } from "./alarm-lamp/alarm-lamp.component";
import { MaterialSharedModule } from "../../shared/material-shared.module";
import { CovalentSharedModule } from "../../shared/covalent-shared.module";
import { DragDropModule } from 'primeng/primeng';

import { UserAlarmconfigService } from "../../service/user_alarmconfig.service";
import { FaultLevelService } from "../../service/fault_level.service";
import { UserFarmAlarmconfigService } from "../../service/user-farm-alarmconfig.service";
import { AlarmCategoryService } from "../../service/alarm-category.service";
import { FarmService } from "../../service/farm.service";
import { StarComponent } from "../navigation/menu/star/star.component";
import { MenuFavoriteService } from "../../service/menu_favorite.service";
import { AudioModule } from "../common/audio/audio.module";
import { UserService } from '../../service/user.service';
import { FactoryService } from '../../service/factory.service';
import { MainModule } from "../monitor/main/main.module";
import { HTTP_INTERCEPTORS } from "@angular/common/http";
import {EarlyWarningComponent} from './alarm-lamp/early-warning/early-warning.component';
import { EarlyWarningService } from "../../service/early-warning.service";
import { SubstationComponent } from './alarm-lamp/substation/substation.component';

@NgModule({
  imports: [
    FormsModule,
    ReactiveFormsModule,
    CommonModule,
    NavigationRoutingModule,
    SharedModule,
    MaterialSharedModule,
    CovalentSharedModule,
    DragDropModule,
    AudioModule,
    MainModule
  ],
  declarations: [
    NavigationComponent,
    MenuComponent,
    NavigationToolbarComponent,
    NavigationBackgroundComponent,
    AlarmLampComponent,
    TitleComponent,
    UserSessionComponent,
    StarComponent,
    EarlyWarningComponent,
    SubstationComponent
  ],
  providers: [
    DatePipe,
    MenuService,
    MenuFavoriteService,
    UserAlarmconfigService,
    FaultLevelService,
    AlarmCategoryService,
    UserFarmAlarmconfigService,
    FarmService,
    UserService,
    FactoryService,
    EarlyWarningService
  ]
})
export class NavigationModule { }



// WEBPACK FOOTER //
// ./src/app/module/navigation/navigation.module.ts